<%@ page contentType="text/javascript" pageEncoding="UTF-8" %>
<%@ page import="util.*" %>
<%@ page import="entidades.*" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.Date" %>
<%@ page import="java.util.HashMap" %>
// <script type="text/javascript"> 

jQuery(document).ready(function()
    {
	// Por defecto, el formulario para modificar un usuario se encuentra oculto.
	jQuery("#table_edicion").hide();

	// Campos de fechas del filtro.
	jQuery(".fecha").datepicker( {showAnim: "slideDown", dateFormat: "dd/mm/yy"} );

	jQuery("#form_filtros input[name='f-fechaAlta1']").change( function()
		{changeCampoFecha("#form_filtros input[name='f-fechaAlta1']", "#form_filtros input[name='f-fechaAlta2']", 1);});
	jQuery("#form_filtros input[name='f-fechaAlta2']").change( function()
		{changeCampoFecha("#form_filtros input[name='f-fechaAlta1']", "#form_filtros input[name='f-fechaAlta2']", 2);});

	// Boton 'Buscar' del filtro.
	jQuery("#form_filtros button[name='buscar']").click(function()
		{jQuery("#form_filtros").submit();});

	// Boton 'Crear orden'.
	jQuery("#btn_alta").click(function()
		{
		document.location.href = "orden-alta.jsp";
		return false;
		});

	// Copios los id's en el formulario para exportar a excel.
	jQuery("#form_exportar input[name='ids']").val( jQuery("#form_resultados input[name='ids']").val() );

	// Filas de la tabla de resultados
	jQuery(".editable")
		.hover
			(
			function () {jQuery(this).addClass("fila_hover");},
			function () {jQuery(this).removeClass("fila_hover");}
			)
		.click(function()
			{
			// Muestro el cartel de espera.
			msjLoading("table_resultados",true);

			// Busco los datos de la orden.
			jQuery.ajax({
						type: 'POST',
						url: 'svcs/ordenes-venta.jsp',
						dataType: 'json',
						data: {'service': 'load',
							   'id': this.id,
							   'timestamp': timestamp()},
						success: success_load_orden,
						error: error_load_orden
						});

			return false;
			});


	// Boton 'Cancelar'.
    jQuery("#form_edicion button[name='cancelar']").click(function()
        {
		jQuery('#table_edicion').hide("blind", {}, 300, function()
			{jQuery('#div_resultados').show("blind", {}, 300);});

		return false;
		});

	// Boton 'Eliminar'.
	jQuery("#form_edicion button[name='eliminar']").click(function()
		{
		jQuery("#form_edicion input[name='accion']").val("borrar");
		jQuery("#form_edicion").submit();
		return false;
		});

	// Boton 'Guardar'.
	jQuery("#form_edicion button[name='guardar']").click(function()
		{
		jQuery("#form_edicion input[name='accion']").val("guardar");
		jQuery("#form_edicion").submit();
		return false;
		});
		
	// Checkbox 'Fantasia'.
	jQuery("#form_edicion input[name='fantasia']").change(function()
		{
		if(jQuery(this).attr('checked'))
			{
			jQuery("#form_edicion input[name='logotipo']").hide();
			jQuery("#form_edicion input[name='logotipo_fantasia']").show();
			}
		 else 
			{ 
			jQuery("#form_edicion input[name='logotipo']").show();
			jQuery("#form_edicion input[name='logotipo_fantasia']").hide();
			}
		});
		
	// Sugerencias para los campos de logotipos.
	jQuery("#form_edicion input[name='logotipo']" ).autocomplete({source: [
		<% {
		boolean primero = true;
		List<Logotipo> logotipos = Logotipo.listar();
	
		for(int i=0; i<logotipos.size(); i++)
			{
			if(!logotipos.get(i).isFantasia())
				{
				if(!primero) out.println(","); else primero = false;
				out.print("\"" + logotipos.get(i).getDescripcion().replace("\"", "\\\"") + "\"");
				}
			} %>			
		]});
		
	jQuery("#form_edicion input[name='logotipo_fantasia']" ).autocomplete({source: [
		<% 
		primero = true;
		for(int i=0; i<logotipos.size(); i++)
			{
			if(logotipos.get(i).isFantasia())
				{
				if(!primero) out.println(","); else primero = false;
				out.print("\"" + logotipos.get(i).getDescripcion().replace("\"", "\\\"") + "\"");
				}
			}
		} %>			
		] });	
    });


function success_load_orden(data, code, xmlHttpRequest)
	{
	if(data.code == '0')
		{
		var orden = eval('(' + data.orden + ')');

		jQuery("#form_edicion input[name='id']").val(orden.id);
		jQuery("#form_edicion input[name='interior']").val(orden.interior? 'Si' : 'No');
		jQuery("#form_edicion input[name='barniz']").val(orden.barniz? 'Si' : 'No');
		jQuery("#form_edicion input[name='cantidad_colores']").val(orden.cantidad_colores);
		jQuery("#form_edicion input[name='laca_uv']").val(orden.laca_uv);
		jQuery("#form_edicion input[name='alta_usuario']").val(orden.alta_usuario);
		jQuery("#form_edicion input[name='alta_fecha_hora']").val(orden.alta_fecha_hora);
		jQuery("#form_edicion input[name='identificador']").val(orden.identificador);
		jQuery("#form_edicion select[name='estado_id'] option").removeAttr("selected");
		jQuery("#form_edicion select[name='estado_id'] option[value='" + orden.estado_id + "']").attr("selected", "selected");

		if(orden.fantasia)
			{
			jQuery("#form_edicion input[name='logotipo']").hide();
			jQuery("#form_edicion input[name='logotipo_fantasia']").show();
			jQuery("#form_edicion input[name='logotipo_fantasia']").val(orden.logotipo);
			jQuery("#form_edicion input[name='fantasia']").attr('checked', 'checked');
			}
		 else 
			{ 
			jQuery("#form_edicion input[name='logotipo']").show();
			jQuery("#form_edicion input[name='logotipo_fantasia']").hide();
			jQuery("#form_edicion input[name='logotipo']").val(orden.logotipo);
			jQuery("#form_edicion input[name='fantasia']").removeAttr('checked');
			}
		
		jQuery("#form_edicion input[name='linea']").val(orden.linea);
		jQuery("#form_edicion select.manija").hide();
		jQuery("#form_edicion select[name='manija_"+orden.linea_id+"']").show();
		jQuery("#form_edicion select[name='manija_"+orden.linea_id+"'] option").removeAttr("selected");
		jQuery("#form_edicion select[name='manija_"+orden.linea_id+"'] option[value='" + orden.manija_id + "']").attr("selected", "selected");
		jQuery("#form_edicion select.tipo_papel").hide();
		jQuery("#form_edicion select[name='tipo_papel_"+orden.linea_id+"']").show();
		jQuery("#form_edicion select[name='tipo_papel_"+orden.linea_id+"'] option").removeAttr("selected");
		jQuery("#form_edicion select[name='tipo_papel_"+orden.linea_id+"'] option[value='" + orden.tipo_papel_id + "']").attr("selected", "selected");
		
		var html = '';
		var ots = data.trabajos;
		for(var i=0; i<ots.length; i++)
			{
			if(i!=0) html += '<br/>';
			html += '<a href="ordenes-trabajo-edit.jsp?id=' + ots[i].identificador + '">Orden ' + ots[i].identificador + '</a>';
			}
		jQuery("#td_edicion_ots").children().remove();
		jQuery("#td_edicion_ots").append(html);

		// Muestro el formulario.
		jQuery('#div_resultados').hide("blind", {}, 300, function()
			{jQuery('#table_edicion').show("blind", {}, 300);});
		}
	else
		{mostrarMsj("Error",data.msj);}

	// Saco el cartel de espera.
	msjLoading("table_resultados",false);
	}

function error_load_orden(xmlHttpRequest, type)
	{
	// Saco el cartel de espera y muestro el error.
	msjLoading("table_resultados",false);
	mostrarMsj("Error","No se pudo establecer la conexión con el servidor: " + type + " " + xmlHttpRequest.status + " (" + xmlHttpRequest.statusText + ")");
	}

// </script>